package com.health.platform.provider.hygieneemergency.dao;

import com.health.platform.common.core.entity.BaseQueryEntity;
import com.health.platform.common.sys.organization.entity.UnitEntity;
import com.health.platform.provider.hygieneemergency.entity.BedNumEntity;
import com.health.platform.provider.hygieneemergency.entity.BloodRateEntity;
import com.health.platform.provider.hygieneemergency.entity.BloodStockEntity;
import com.health.platform.provider.hygieneemergency.entity.EmeCarEntity;
import com.health.platform.provider.hygieneemergency.entity.EmeMaterialEntity;
import com.health.platform.provider.hygieneemergency.entity.EmeMaterialRateEntity;
import com.health.platform.provider.hygieneemergency.entity.SummaryEntity;
import com.health.platform.provider.homepage.entity.DropDownBox;

import java.util.List;

/**
 * <p>卫生应急Dao</p>
 * <p>创建日期：2021-02-27</p>
 *
 * @author zhou-qf
 */
public interface HygieneEmeDao {

    /**
     * 获取汇总信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    SummaryEntity getSummary(BaseQueryEntity baseQueryEntity);

    /**
     * 获取血液库存列表信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    List<BloodStockEntity> getBloodStock(BaseQueryEntity baseQueryEntity);

    /**
     * 获取血型比例信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    BloodRateEntity getBloodRate(BaseQueryEntity baseQueryEntity);

    /**
     * 获取应急物资列表信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    List<EmeMaterialEntity> getEmeMaterial(BaseQueryEntity baseQueryEntity);

    /**
     * 获取应急物资占比信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    EmeMaterialRateEntity getEmeMaterialRate(BaseQueryEntity baseQueryEntity);

    /**
     * 获取急救车辆列表信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    List<EmeCarEntity> getEmeCar(BaseQueryEntity baseQueryEntity);

    /**
     * 获取床位管理列表信息
     * @param baseQueryEntity 参数
     * @return 结果
     */
    List<BedNumEntity> getBedNum(BaseQueryEntity baseQueryEntity);

    /**
     * 获取物资类型
     * @param baseQueryEntity 参数
     * @return 结果
     */
    List<DropDownBox> getSuppliesType(BaseQueryEntity baseQueryEntity);

    /**
     * 通过条件查询机构信息
     * @param unitEntity 查询条件
     * @return 结果
     */
    List<UnitEntity> getUnit(UnitEntity unitEntity);

    /**
     * 获取红细胞类，血小板类库存
     * @return 结果
     */
    List<BloodStockEntity> getBS();
}
